Each real-time avionics system is architectured and developed to meet, in a defined framework of employment, performance requirements (for example in regard to RAM, ROM, reset or fault rate, CPU loading and functional Quality of Service or QoS.
Onboard systems are qualified, with a demonstrated performance level, for a given environment. The interactions between onboard systems are defined a priori when devising the architecture of the airplane, and these onboard systems are developed and adjusted to strictly meet the identified needs.
From the standpoint of a client-server perspective, according to which a set of systems termed “CLIENTS” make requests to one or more particular service-provider systems termed “SERVER”, there arises notably the technical problem consisting in guaranteeing said clients a certain level of quality of service, for example in regard to precision and response time such as expected by the waiting clients, and to guarantee the proper operation of the whole architecture “N clients and M servers” alongside the updates of the various systems (i.e. by managing a variability and development cycles which differ). The upgrades of a system (client or server) must not cause the set of connected systems to be called into question. Moreover, in an onboard real-time environment, in which the sub-systems have a different criticality level, it is desirable that the critical systems acting as servers be modified as little as possible, having regard to the costs and risks of degradation of said systems.
These technical problems are not currently solved and a requalification is compulsory for the addition of any new system that wishes to connect to an existing system. A new certification or recertification of the airplane is generally required, generating substantial cost overheads. In fact, these systemic aspects (involving overhauls of the architecture of the servers and of their interfaces and therefore requalification costs) currently curb the upgrading of airplane operations.
In practice for example, if a client needs a Quality of Service (QoS) of a certain level (such as for example an expected limit response time), and the server needs more time to perform its calculation, the consequence which ensues is that the client will have to wait. In certain alternative configurations, the server may decide to cancel the client's request if the necessary calculation time is greater than the response time requested by the client. This type of configuration is however not acceptable in certain situations, notably in the case of onboard real-time systems which require a response within the allowed times to ensure their proper operation. For example, notably within the framework of “open” architectures where an a priori unknown number of clients connects in an asynchronous and random manner to a server with limited calculation capabilities, the existing solutions will in the best case deny overly numerous requests, or in the worst case respond too often and/or too late, endangering the overall architecture of the system.
The approaches known in the prior art generally consist in requalifying the equipment affected or impacted by a new connection (even with constant functionalities), so as to verify adherence in regard to performance. Avionics architectures are therefore defined statically, during the design of the airplane system. The patent literature does not provide any satisfactory solution to the technical problem. For example, patent document U.S. Pat. No. 8,832,302 entitled “System and method for a priori scheduling of network services” describes a system for ad hoc networks comprising mechanisms for recognizing services. This approach structured by services and not by data exhibits limitations.
An industrial need exists for methods and systems corresponding to flexible and adaptable architectures making it possible notably to ensure the upgradability of the various client and server systems in an independent manner, while guaranteeing clients a level of quality of service which is guaranteed.